home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / scheme / gjr / cmplrtst.lha / reverse.scm < prev    next >
Encoding:
Text File  |  1990-03-27  |  354 b   |  23 lines

  1. ;;; -*- Scheme -*-
  2.  
  3. #|
  4. Description:
  5. Standard iterative reverse.
  6.  
  7. Usage:
  8. (reverse '(1 2 3 4)) -> (4 3 2 1)
  9. |#
  10.  
  11. (declare (usual-integrations))
  12.  
  13. (define (reverse some-list)
  14.   (define (loop l m)
  15.     (cond ((pair? l)
  16.        (loop (cdr l) (cons (car l) m)))
  17.       ((null? l) m)
  18.       (else
  19.        (error "Reverse: not a list" some-list))))
  20.   (loop some-list '()))
  21.  
  22.       
  23.